package jdbc;

import java.sql.ResultSet;
import java.sql.SQLException;

public class LineaDeVentaJDBC {

	public static void insertarlineadeventa(Integer id_almacen, double precio,
			Integer unidad, Integer id_cliente) throws SQLException {

		conexion.con();
		
		CarritoJDBC.insertarcarrito(id_cliente);
		
		Integer id_carrito=CarritoJDBC.buscalcarrito(id_cliente);

		String query = ("Insert into linea_de_venta (id_almacen, precio, unidad, id_carrito) values ('"
				+ id_almacen
				+ "','"
				+ precio
				+ "','"
				+ unidad
				+ "','"
				+ id_carrito

		+ "');");

		if (!LineaDeVentaJDBC.comprobarlineadeventa(id_carrito)) {
			conexion.insertar(query);
		} else {
			System.out.println("Ya existe en la base de datos");
		}

	}

	public static boolean comprobarlineadeventa(Integer id_carrito)
			throws SQLException {
		boolean resul = false;
		String c = "Select * from linea_de_venta where id_carrito="
				+ id_carrito+";";
		ResultSet comprobacion = conexion.crearconsulta(c);

		if (comprobacion.next()) {
			resul = true;
		}

		return resul;
	}

	public static Integer buscalineadeventa(Integer id_carrito) throws SQLException {
		conexion.con();
		Integer id_lineadeventa = 0;
		ResultSet comprobacion = conexion
				.crearconsulta("Select id_linea_de_venta from linea_de_venta where id_carrito="
						+ id_carrito +";");

		while (comprobacion.next()) {
			id_lineadeventa = comprobacion.getInt("id_linea_de_venta");

		}
		conexion.cerrarconexion();
		return id_lineadeventa;

	}
	
	public static void modificarlineadeventa(Integer id_almacen, Double precio,
			Integer unidad, Integer id_cliente) throws SQLException {

		if (unidad == null) {
			ResultSet res = conexion
					.crearconsulta("Select unidad from linea_de_venta where id_almacen="
							+ id_almacen + " AND id_cliente=" + id_cliente + ";");
			while (res.next()) {
				unidad = res.getInt("unidad");
			}
		}

		if (precio == null ) {
			ResultSet res2 = conexion
					.crearconsulta("Select precio from linea_de_venta where id_almacen="
							+ id_almacen + " AND id_cliente=" + id_cliente + ";");
			while (res2.next()) {
				precio = res2.getDouble("precio");
			}
		}


		String query = "update linea_de_venta set " + "',precio='" + precio
				+ "', unidad=" + unidad + ";";
		
		conexion.insertar(query);

	}
	
	public static void borrarlineadeventa(Integer id_carrito, Integer id_almacen) throws SQLException{

		  String query = ("delete from linea_de_venta where id_carrito="
							+ id_carrito + " AND id_almacen=" + id_almacen + ";");
			conexion.insertar(query);
		
	}
	

}
